package com.hyz.chajianhuahuanfu;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatDelegate;
import android.view.View;
import android.widget.Button;

/**
 * 使用supportLibrary 换肤步骤：
 * 1.添加compile 'com.android.support:appcompat-v7:24.0.0'以上
 * 2.在Application 设置初始MODE AppCompatDelegate.setDefaultNightMode(int mode);
 * 3.创建需要的values-night、drawable-night、文件夹
 * 4.设置AppTheme parent为Theme.AppCompat.DayNight
 * 5.Activity继承AppcompactActivity
 * 6.点击事件中调用:AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
 * 7.recreat()重启界面
 *
 * 注意事项：
 * 1.MODE_NIGHT_NO: 使用亮色(light)主题,不使用夜间模式
 *   MODE_NIGHT_YES:使用暗色(dark)主题,使用夜间模式
 *   MODE_NIGHT_AUTO:根据当前时间自动切换 亮色(light)/暗色(dark)主题
 *   MODE_NIGHT_FOLLOW_SYSTEM(默认选项):设置为跟随系统,通常为 MODE_NIGHT_NO
 * 2.setDefaultNightMode()与setLocalNightMode()区别
 * 3.AppCompatDelegate.setDefaultNightMode()是对整个App中theme为DayNight主题生效
 * 4.getDelegate().setLocalNightMode()只对特定的组件生效
 * 5.当前的状态通过sharedPreference来保存
 */
public class MainActivity extends BaseSkinActivity implements View.OnClickListener {

    Button changeColor;
    Button jump;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        changeColor = (Button) findViewById(R.id.changeColor);
        jump = (Button) findViewById(R.id.jump);
        
        changeColor.setOnClickListener(this);
        jump.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.changeColor:
                change();
                break;

            case R.id.jump:
                jumpActivity();
                break;
            default:
                break;
                
        }
    }

    private void jumpActivity() {
        Intent i = new Intent(this , TwoActvitiy.class);
        startActivity(i);
    }
    boolean b = true;
    private void change() {
        if (b){
            AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);//夜间模式
        }else {
            AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);//日间模式
        }
       recreate();
    }
}
